/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package View.seguridad;

import Model.AccionXPerfil;
import Model.AccionXPerfilId;
import Model.Perfil;
import Presenter.AccionPresenter;
import Presenter.AccionXPerfilPresenter;
import Presenter.EnvioPedidoPresenter;
import Presenter.PerfilPresenter;
import Principals.Main;
import Principals.Validadores;
import View.components.Index;
import javax.swing.JDesktopPane;
import javax.swing.JOptionPane;

/**
 *
 * @author Vasco
 */
public class Frm_RegistrarPerfil extends javax.swing.JDesktopPane {

    Validadores val = new Validadores();

    /**
     * Creates new form FrmRegistrarPerfil
     */
    public Frm_RegistrarPerfil() {
        EnvioPedidoPresenter.actualizarEnvioPedido() ;
        initComponents();
        val.desactivarAccionPegar(txtNombre);
        val.desactivarAccionPegar(txaDescripcion);
    }

    /**
     * This method is called from within the constructor to initialize the form.
     * WARNING: Do NOT modify this code. The content of this method is always
     * regenerated by the Form Editor.
     */
    @SuppressWarnings("unchecked")
    // <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents
    private void initComponents() {

        jToolBar1 = new javax.swing.JToolBar();
        btnToolNuevo = new javax.swing.JButton();
        btnToolModificar = new javax.swing.JButton();
        btnToolGuardar = new javax.swing.JButton();
        btnToolEliminar = new javax.swing.JButton();
        jSeparator2 = new javax.swing.JToolBar.Separator();
        btnToolLimpiar = new javax.swing.JButton();
        btnToolBuscar = new javax.swing.JButton();
        jSeparator1 = new javax.swing.JToolBar.Separator();
        btnToolCancelar = new javax.swing.JButton();
        jSeparator3 = new javax.swing.JToolBar.Separator();
        pnlRegistrarPerfil = new javax.swing.JPanel();
        lblNombre = new javax.swing.JLabel();
        txtNombre = new javax.swing.JTextField();
        lblDescripcion = new javax.swing.JLabel();
        jScrollPane1 = new javax.swing.JScrollPane();
        txaDescripcion = new javax.swing.JTextArea();
        jtpAccesos = new javax.swing.JTabbedPane();
        pnlAdministracion = new javax.swing.JPanel();
        ckbAdminEmpleados = new javax.swing.JCheckBox();
        ckbAdminVehiculo = new javax.swing.JCheckBox();
        pnlPlanificacion = new javax.swing.JPanel();
        ckbPlaniMonitorear = new javax.swing.JCheckBox();
        ckbPlaniPlanificar = new javax.swing.JCheckBox();
        ckbPlaniMapa = new javax.swing.JCheckBox();
        ckbSimulacion = new javax.swing.JCheckBox();
        pnlVentas = new javax.swing.JPanel();
        ckbVentaProductos = new javax.swing.JCheckBox();
        ckbVentaClientes = new javax.swing.JCheckBox();
        ckbVentaPedidos = new javax.swing.JCheckBox();
        pnlSeguridad = new javax.swing.JPanel();
        ckbSegPerfiles = new javax.swing.JCheckBox();
        pnlConfiguracion = new javax.swing.JPanel();
        ckbConfigVariables = new javax.swing.JCheckBox();
        pnlReportes = new javax.swing.JPanel();
        ckbRepEnvios = new javax.swing.JCheckBox();
        ckbRepEnviosRetrasados = new javax.swing.JCheckBox();
        ckbRepSeguridad = new javax.swing.JCheckBox();
        ckbRepRentabilidad = new javax.swing.JCheckBox();
        ckbRepSimulacion = new javax.swing.JCheckBox();

        jToolBar1.setFloatable(false);
        jToolBar1.setRollover(true);
        jToolBar1.setBorderPainted(false);

        btnToolNuevo.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Images/botones/Nuevo.png"))); // NOI18N
        btnToolNuevo.setEnabled(false);
        btnToolNuevo.setFocusable(false);
        btnToolNuevo.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER);
        btnToolNuevo.setVerticalTextPosition(javax.swing.SwingConstants.BOTTOM);
        btnToolNuevo.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                btnToolNuevoActionPerformed(evt);
            }
        });
        jToolBar1.add(btnToolNuevo);

        btnToolModificar.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Images/botones/Editar.png"))); // NOI18N
        btnToolModificar.setEnabled(false);
        btnToolModificar.setFocusable(false);
        btnToolModificar.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER);
        btnToolModificar.setVerticalTextPosition(javax.swing.SwingConstants.BOTTOM);
        btnToolModificar.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                btnToolModificarActionPerformed(evt);
            }
        });
        jToolBar1.add(btnToolModificar);

        btnToolGuardar.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Images/botones/Guardar.png"))); // NOI18N
        btnToolGuardar.setFocusable(false);
        btnToolGuardar.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER);
        btnToolGuardar.setVerticalTextPosition(javax.swing.SwingConstants.BOTTOM);
        btnToolGuardar.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                btnToolGuardarActionPerformed(evt);
            }
        });
        jToolBar1.add(btnToolGuardar);

        btnToolEliminar.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Images/botones/Eliminar.png"))); // NOI18N
        btnToolEliminar.setEnabled(false);
        btnToolEliminar.setFocusable(false);
        btnToolEliminar.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER);
        btnToolEliminar.setVerticalTextPosition(javax.swing.SwingConstants.BOTTOM);
        btnToolEliminar.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                btnToolEliminarActionPerformed(evt);
            }
        });
        jToolBar1.add(btnToolEliminar);
        jToolBar1.add(jSeparator2);

        btnToolLimpiar.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Images/botones/Limpiar.png"))); // NOI18N
        btnToolLimpiar.setFocusable(false);
        btnToolLimpiar.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER);
        btnToolLimpiar.setVerticalTextPosition(javax.swing.SwingConstants.BOTTOM);
        btnToolLimpiar.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                btnToolLimpiarActionPerformed(evt);
            }
        });
        jToolBar1.add(btnToolLimpiar);

        btnToolBuscar.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Images/botones/Buscar.png"))); // NOI18N
        btnToolBuscar.setFocusable(false);
        btnToolBuscar.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER);
        btnToolBuscar.setVerticalTextPosition(javax.swing.SwingConstants.BOTTOM);
        btnToolBuscar.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                btnToolBuscarActionPerformed(evt);
            }
        });
        jToolBar1.add(btnToolBuscar);
        jToolBar1.add(jSeparator1);

        btnToolCancelar.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Images/botones/Cancelar.png"))); // NOI18N
        btnToolCancelar.setFocusable(false);
        btnToolCancelar.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER);
        btnToolCancelar.setVerticalTextPosition(javax.swing.SwingConstants.BOTTOM);
        btnToolCancelar.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                btnToolCancelarActionPerformed(evt);
            }
        });
        jToolBar1.add(btnToolCancelar);
        jToolBar1.add(jSeparator3);

        pnlRegistrarPerfil.setBorder(javax.swing.BorderFactory.createTitledBorder("Registrar Perfil"));

        lblNombre.setText("Nombre*:");

        txtNombre.addKeyListener(new java.awt.event.KeyAdapter() {
            public void keyTyped(java.awt.event.KeyEvent evt) {
                txtNombreKeyTyped(evt);
            }
        });

        lblDescripcion.setText("Descripción*:");

        txaDescripcion.setColumns(20);
        txaDescripcion.setRows(5);
        txaDescripcion.addKeyListener(new java.awt.event.KeyAdapter() {
            public void keyTyped(java.awt.event.KeyEvent evt) {
                txaDescripcionKeyTyped(evt);
            }
        });
        jScrollPane1.setViewportView(txaDescripcion);

        ckbAdminEmpleados.setText("Empleados");

        ckbAdminVehiculo.setText("Vehículos");

        javax.swing.GroupLayout pnlAdministracionLayout = new javax.swing.GroupLayout(pnlAdministracion);
        pnlAdministracion.setLayout(pnlAdministracionLayout);
        pnlAdministracionLayout.setHorizontalGroup(
            pnlAdministracionLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(pnlAdministracionLayout.createSequentialGroup()
                .addGap(17, 17, 17)
                .addComponent(ckbAdminEmpleados)
                .addGap(18, 18, 18)
                .addComponent(ckbAdminVehiculo)
                .addContainerGap(290, Short.MAX_VALUE))
        );
        pnlAdministracionLayout.setVerticalGroup(
            pnlAdministracionLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(pnlAdministracionLayout.createSequentialGroup()
                .addGap(24, 24, 24)
                .addGroup(pnlAdministracionLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(ckbAdminEmpleados)
                    .addComponent(ckbAdminVehiculo))
                .addContainerGap(34, Short.MAX_VALUE))
        );

        jtpAccesos.addTab("Administración", pnlAdministracion);

        ckbPlaniMonitorear.setText("Monitorear pedidos");

        ckbPlaniPlanificar.setText("Planificar pedidos");

        ckbPlaniMapa.setText("Mapa");

        ckbSimulacion.setText("Simulación");

        javax.swing.GroupLayout pnlPlanificacionLayout = new javax.swing.GroupLayout(pnlPlanificacion);
        pnlPlanificacion.setLayout(pnlPlanificacionLayout);
        pnlPlanificacionLayout.setHorizontalGroup(
            pnlPlanificacionLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(pnlPlanificacionLayout.createSequentialGroup()
                .addGap(17, 17, 17)
                .addComponent(ckbPlaniMonitorear)
                .addGap(18, 18, 18)
                .addComponent(ckbPlaniPlanificar)
                .addGap(18, 18, 18)
                .addComponent(ckbPlaniMapa)
                .addGap(18, 18, 18)
                .addComponent(ckbSimulacion)
                .addContainerGap(48, Short.MAX_VALUE))
        );
        pnlPlanificacionLayout.setVerticalGroup(
            pnlPlanificacionLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(pnlPlanificacionLayout.createSequentialGroup()
                .addGap(24, 24, 24)
                .addGroup(pnlPlanificacionLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(ckbPlaniMonitorear)
                    .addComponent(ckbPlaniPlanificar)
                    .addComponent(ckbPlaniMapa)
                    .addComponent(ckbSimulacion))
                .addContainerGap(34, Short.MAX_VALUE))
        );

        jtpAccesos.addTab("Planificación", pnlPlanificacion);

        ckbVentaProductos.setText("Productos");

        ckbVentaClientes.setText("Clientes");

        ckbVentaPedidos.setText("Pedidos");

        javax.swing.GroupLayout pnlVentasLayout = new javax.swing.GroupLayout(pnlVentas);
        pnlVentas.setLayout(pnlVentasLayout);
        pnlVentasLayout.setHorizontalGroup(
            pnlVentasLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(pnlVentasLayout.createSequentialGroup()
                .addGap(17, 17, 17)
                .addComponent(ckbVentaProductos)
                .addGap(18, 18, 18)
                .addComponent(ckbVentaClientes)
                .addGap(18, 18, 18)
                .addComponent(ckbVentaPedidos)
                .addContainerGap(219, Short.MAX_VALUE))
        );
        pnlVentasLayout.setVerticalGroup(
            pnlVentasLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(pnlVentasLayout.createSequentialGroup()
                .addGap(24, 24, 24)
                .addGroup(pnlVentasLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(ckbVentaProductos)
                    .addComponent(ckbVentaClientes)
                    .addComponent(ckbVentaPedidos))
                .addContainerGap(34, Short.MAX_VALUE))
        );

        jtpAccesos.addTab("Ventas", pnlVentas);

        ckbSegPerfiles.setText("Administrar perfiles");

        javax.swing.GroupLayout pnlSeguridadLayout = new javax.swing.GroupLayout(pnlSeguridad);
        pnlSeguridad.setLayout(pnlSeguridadLayout);
        pnlSeguridadLayout.setHorizontalGroup(
            pnlSeguridadLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(pnlSeguridadLayout.createSequentialGroup()
                .addGap(17, 17, 17)
                .addComponent(ckbSegPerfiles)
                .addContainerGap(337, Short.MAX_VALUE))
        );
        pnlSeguridadLayout.setVerticalGroup(
            pnlSeguridadLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(pnlSeguridadLayout.createSequentialGroup()
                .addGap(24, 24, 24)
                .addComponent(ckbSegPerfiles)
                .addContainerGap(34, Short.MAX_VALUE))
        );

        jtpAccesos.addTab("Seguridad", pnlSeguridad);

        ckbConfigVariables.setText("Variables del sistema");

        javax.swing.GroupLayout pnlConfiguracionLayout = new javax.swing.GroupLayout(pnlConfiguracion);
        pnlConfiguracion.setLayout(pnlConfiguracionLayout);
        pnlConfiguracionLayout.setHorizontalGroup(
            pnlConfiguracionLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(pnlConfiguracionLayout.createSequentialGroup()
                .addGap(17, 17, 17)
                .addComponent(ckbConfigVariables)
                .addContainerGap(329, Short.MAX_VALUE))
        );
        pnlConfiguracionLayout.setVerticalGroup(
            pnlConfiguracionLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(pnlConfiguracionLayout.createSequentialGroup()
                .addGap(24, 24, 24)
                .addComponent(ckbConfigVariables)
                .addContainerGap(34, Short.MAX_VALUE))
        );

        jtpAccesos.addTab("Configuración", pnlConfiguracion);

        ckbRepEnvios.setText("Envios");

        ckbRepEnviosRetrasados.setText("Envios Retrasados");

        ckbRepSeguridad.setText("Seguridad");

        ckbRepRentabilidad.setText("Rentabilidad");

        ckbRepSimulacion.setText("Simulacion");

        javax.swing.GroupLayout pnlReportesLayout = new javax.swing.GroupLayout(pnlReportes);
        pnlReportes.setLayout(pnlReportesLayout);
        pnlReportesLayout.setHorizontalGroup(
            pnlReportesLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(pnlReportesLayout.createSequentialGroup()
                .addGap(17, 17, 17)
                .addGroup(pnlReportesLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addComponent(ckbRepSimulacion)
                    .addComponent(ckbRepEnvios))
                .addGap(18, 18, 18)
                .addComponent(ckbRepEnviosRetrasados)
                .addGap(18, 18, 18)
                .addComponent(ckbRepSeguridad)
                .addGap(18, 18, 18)
                .addComponent(ckbRepRentabilidad)
                .addContainerGap(52, Short.MAX_VALUE))
        );
        pnlReportesLayout.setVerticalGroup(
            pnlReportesLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(pnlReportesLayout.createSequentialGroup()
                .addGap(16, 16, 16)
                .addGroup(pnlReportesLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(ckbRepEnvios)
                    .addComponent(ckbRepEnviosRetrasados)
                    .addComponent(ckbRepSeguridad)
                    .addComponent(ckbRepRentabilidad))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 12, Short.MAX_VALUE)
                .addComponent(ckbRepSimulacion)
                .addContainerGap())
        );

        jtpAccesos.addTab("Reportes", pnlReportes);

        javax.swing.GroupLayout pnlRegistrarPerfilLayout = new javax.swing.GroupLayout(pnlRegistrarPerfil);
        pnlRegistrarPerfil.setLayout(pnlRegistrarPerfilLayout);
        pnlRegistrarPerfilLayout.setHorizontalGroup(
            pnlRegistrarPerfilLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(pnlRegistrarPerfilLayout.createSequentialGroup()
                .addContainerGap()
                .addGroup(pnlRegistrarPerfilLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addComponent(jtpAccesos, javax.swing.GroupLayout.PREFERRED_SIZE, 0, Short.MAX_VALUE)
                    .addGroup(pnlRegistrarPerfilLayout.createSequentialGroup()
                        .addComponent(lblNombre)
                        .addGap(18, 18, 18)
                        .addComponent(txtNombre, javax.swing.GroupLayout.PREFERRED_SIZE, 137, javax.swing.GroupLayout.PREFERRED_SIZE)
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                        .addComponent(lblDescripcion)
                        .addGap(18, 18, 18)
                        .addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 188, javax.swing.GroupLayout.PREFERRED_SIZE)))
                .addContainerGap())
        );
        pnlRegistrarPerfilLayout.setVerticalGroup(
            pnlRegistrarPerfilLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(pnlRegistrarPerfilLayout.createSequentialGroup()
                .addContainerGap()
                .addGroup(pnlRegistrarPerfilLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 55, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addGroup(pnlRegistrarPerfilLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                        .addComponent(lblNombre)
                        .addComponent(txtNombre, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                        .addComponent(lblDescripcion)))
                .addGap(18, 18, 18)
                .addComponent(jtpAccesos)
                .addContainerGap())
        );

        javax.swing.GroupLayout layout = new javax.swing.GroupLayout(this);
        this.setLayout(layout);
        layout.setHorizontalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addComponent(jToolBar1, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
            .addComponent(pnlRegistrarPerfil, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
        );
        layout.setVerticalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(layout.createSequentialGroup()
                .addContainerGap()
                .addComponent(jToolBar1, javax.swing.GroupLayout.PREFERRED_SIZE, 25, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addGap(11, 11, 11)
                .addComponent(pnlRegistrarPerfil, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                .addContainerGap())
        );
    }// </editor-fold>//GEN-END:initComponents

    private void cambiarVista(JDesktopPane panel) {
        ((Index) (this.getTopLevelAncestor())).changeDesktopPane(panel);
    }

    private void btnToolNuevoActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnToolNuevoActionPerformed
    }//GEN-LAST:event_btnToolNuevoActionPerformed

    private void btnToolModificarActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnToolModificarActionPerformed
    }//GEN-LAST:event_btnToolModificarActionPerformed

    private void btnToolLimpiarActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnToolLimpiarActionPerformed
    }//GEN-LAST:event_btnToolLimpiarActionPerformed

    private void btnToolBuscarActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnToolBuscarActionPerformed
        cambiarVista(new Frm_BuscarPerfil());
    }//GEN-LAST:event_btnToolBuscarActionPerformed

    private void btnToolCancelarActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnToolCancelarActionPerformed
        cambiarVista(new Frm_BuscarPerfil()); // si se cancela se va a buscar
    }//GEN-LAST:event_btnToolCancelarActionPerformed

    private void btnToolEliminarActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnToolEliminarActionPerformed
        // TODO add your handling code here:
    }//GEN-LAST:event_btnToolEliminarActionPerformed

    private void btnToolGuardarActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnToolGuardarActionPerformed
        String nombre = txtNombre.getText();
        String descripcion = txaDescripcion.getText();
        Perfil perfInsertado;
        AccionXPerfilId axPerfil;
        axPerfil = new AccionXPerfilId();
        if (!"".equals(nombre) && !"".equals(descripcion)) {
            perfInsertado = PerfilPresenter.registrarPerfil(nombre, descripcion);
            axPerfil.setIdPerfil(perfInsertado.getIdPerfil());

            if (ckbAdminEmpleados.isSelected()) {
                AccionXPerfil accAdminEmpleados = new AccionXPerfil();
                accAdminEmpleados.setAccion(AccionPresenter.buscarAccion(1));
                accAdminEmpleados.setPerfil(perfInsertado);
                accAdminEmpleados.setEstado(1);
                axPerfil.setIdAccion(1);
                accAdminEmpleados.setId(axPerfil);
                AccionXPerfilPresenter.registrarAccionXPerfil(accAdminEmpleados);
            } else {
                AccionXPerfil accAdminEmpleados = new AccionXPerfil();
                accAdminEmpleados.setAccion(AccionPresenter.buscarAccion(1));
                accAdminEmpleados.setPerfil(perfInsertado);
                accAdminEmpleados.setEstado(0);
                axPerfil.setIdAccion(1);
                accAdminEmpleados.setId(axPerfil);
                AccionXPerfilPresenter.registrarAccionXPerfil(accAdminEmpleados);
            }

            if (ckbAdminVehiculo.isSelected()) {
                AccionXPerfil accAdminVehiculo = new AccionXPerfil();
                accAdminVehiculo.setAccion(AccionPresenter.buscarAccion(2));
                accAdminVehiculo.setPerfil(perfInsertado);
                accAdminVehiculo.setEstado(1);
                axPerfil.setIdAccion(2);
                accAdminVehiculo.setId(axPerfil);
                AccionXPerfilPresenter.registrarAccionXPerfil(accAdminVehiculo);
            } else {
                AccionXPerfil accAdminVehiculo = new AccionXPerfil();
                accAdminVehiculo.setAccion(AccionPresenter.buscarAccion(2));
                accAdminVehiculo.setPerfil(perfInsertado);
                accAdminVehiculo.setEstado(0);
                axPerfil.setIdAccion(2);
                accAdminVehiculo.setId(axPerfil);
                AccionXPerfilPresenter.registrarAccionXPerfil(accAdminVehiculo);
            }

            if (ckbPlaniMonitorear.isSelected()) {
                AccionXPerfil accPlaniMonitorear = new AccionXPerfil();
                accPlaniMonitorear.setAccion(AccionPresenter.buscarAccion(3));
                accPlaniMonitorear.setPerfil(perfInsertado);
                accPlaniMonitorear.setEstado(1);
                axPerfil.setIdAccion(3);
                accPlaniMonitorear.setId(axPerfil);
                AccionXPerfilPresenter.registrarAccionXPerfil(accPlaniMonitorear);
            } else {
                AccionXPerfil accPlaniMonitorear = new AccionXPerfil();
                accPlaniMonitorear.setAccion(AccionPresenter.buscarAccion(3));
                accPlaniMonitorear.setPerfil(perfInsertado);
                accPlaniMonitorear.setEstado(0);
                axPerfil.setIdAccion(3);
                accPlaniMonitorear.setId(axPerfil);
                AccionXPerfilPresenter.registrarAccionXPerfil(accPlaniMonitorear);
            }

            if (ckbSimulacion.isSelected()) {
                AccionXPerfil accSimulacion = new AccionXPerfil();
                accSimulacion.setAccion(AccionPresenter.buscarAccion(4));
                accSimulacion.setPerfil(perfInsertado);
                accSimulacion.setEstado(1);
                axPerfil.setIdAccion(4);
                accSimulacion.setId(axPerfil);
                AccionXPerfilPresenter.registrarAccionXPerfil(accSimulacion);
            } else {
                AccionXPerfil accSimulacion = new AccionXPerfil();
                accSimulacion.setAccion(AccionPresenter.buscarAccion(4));
                accSimulacion.setPerfil(perfInsertado);
                accSimulacion.setEstado(0);
                axPerfil.setIdAccion(4);
                accSimulacion.setId(axPerfil);
                AccionXPerfilPresenter.registrarAccionXPerfil(accSimulacion);
            }

            if (ckbPlaniPlanificar.isSelected()) {
                AccionXPerfil accPlaniPlanificar = new AccionXPerfil();
                accPlaniPlanificar.setAccion(AccionPresenter.buscarAccion(5));
                accPlaniPlanificar.setPerfil(perfInsertado);
                accPlaniPlanificar.setEstado(1);
                axPerfil.setIdAccion(5);
                accPlaniPlanificar.setId(axPerfil);
                AccionXPerfilPresenter.registrarAccionXPerfil(accPlaniPlanificar);
            } else {
                AccionXPerfil accPlaniPlanificar = new AccionXPerfil();
                accPlaniPlanificar.setAccion(AccionPresenter.buscarAccion(5));
                accPlaniPlanificar.setPerfil(perfInsertado);
                accPlaniPlanificar.setEstado(0);
                axPerfil.setIdAccion(5);
                accPlaniPlanificar.setId(axPerfil);
                AccionXPerfilPresenter.registrarAccionXPerfil(accPlaniPlanificar);
            }

            if (ckbPlaniMapa.isSelected()) {
                AccionXPerfil accPlaniMapa = new AccionXPerfil();
                accPlaniMapa.setAccion(AccionPresenter.buscarAccion(6));
                accPlaniMapa.setPerfil(perfInsertado);
                accPlaniMapa.setEstado(1);
                axPerfil.setIdAccion(6);
                accPlaniMapa.setId(axPerfil);
                AccionXPerfilPresenter.registrarAccionXPerfil(accPlaniMapa);
            } else {
                AccionXPerfil accPlaniMapa = new AccionXPerfil();
                accPlaniMapa.setAccion(AccionPresenter.buscarAccion(6));
                accPlaniMapa.setPerfil(perfInsertado);
                accPlaniMapa.setEstado(0);
                axPerfil.setIdAccion(6);
                accPlaniMapa.setId(axPerfil);
                AccionXPerfilPresenter.registrarAccionXPerfil(accPlaniMapa);
            }

            if (ckbVentaProductos.isSelected()) {
                AccionXPerfil accVentaProductos = new AccionXPerfil();
                accVentaProductos.setAccion(AccionPresenter.buscarAccion(7));
                accVentaProductos.setPerfil(perfInsertado);
                accVentaProductos.setEstado(1);
                axPerfil.setIdAccion(7);
                accVentaProductos.setId(axPerfil);
                AccionXPerfilPresenter.registrarAccionXPerfil(accVentaProductos);
            } else {
                AccionXPerfil accVentaProductos = new AccionXPerfil();
                accVentaProductos.setAccion(AccionPresenter.buscarAccion(7));
                accVentaProductos.setPerfil(perfInsertado);
                accVentaProductos.setEstado(0);
                axPerfil.setIdAccion(7);
                accVentaProductos.setId(axPerfil);
                AccionXPerfilPresenter.registrarAccionXPerfil(accVentaProductos);
            }

            if (ckbVentaClientes.isSelected()) {
                AccionXPerfil accVentaClientes = new AccionXPerfil();
                accVentaClientes.setAccion(AccionPresenter.buscarAccion(8));
                accVentaClientes.setPerfil(perfInsertado);
                accVentaClientes.setEstado(1);
                axPerfil.setIdAccion(8);
                accVentaClientes.setId(axPerfil);
                AccionXPerfilPresenter.registrarAccionXPerfil(accVentaClientes);
            } else {
                AccionXPerfil accVentaClientes = new AccionXPerfil();
                accVentaClientes.setAccion(AccionPresenter.buscarAccion(8));
                accVentaClientes.setPerfil(perfInsertado);
                accVentaClientes.setEstado(0);
                axPerfil.setIdAccion(8);
                accVentaClientes.setId(axPerfil);
                AccionXPerfilPresenter.registrarAccionXPerfil(accVentaClientes);
            }

            if (ckbVentaPedidos.isSelected()) {
                AccionXPerfil accVentaPedidos = new AccionXPerfil();
                accVentaPedidos.setAccion(AccionPresenter.buscarAccion(9));
                accVentaPedidos.setPerfil(perfInsertado);
                accVentaPedidos.setEstado(1);
                axPerfil.setIdAccion(9);
                accVentaPedidos.setId(axPerfil);
                AccionXPerfilPresenter.registrarAccionXPerfil(accVentaPedidos);
            } else {
                AccionXPerfil accVentaPedidos = new AccionXPerfil();
                accVentaPedidos.setAccion(AccionPresenter.buscarAccion(9));
                accVentaPedidos.setPerfil(perfInsertado);
                accVentaPedidos.setEstado(0);
                axPerfil.setIdAccion(9);
                accVentaPedidos.setId(axPerfil);
                AccionXPerfilPresenter.registrarAccionXPerfil(accVentaPedidos);
            }

            if (ckbSegPerfiles.isSelected()) {
                AccionXPerfil accSegPerfiles = new AccionXPerfil();
                accSegPerfiles.setAccion(AccionPresenter.buscarAccion(10));
                accSegPerfiles.setPerfil(perfInsertado);
                accSegPerfiles.setEstado(1);
                axPerfil.setIdAccion(10);
                accSegPerfiles.setId(axPerfil);
                AccionXPerfilPresenter.registrarAccionXPerfil(accSegPerfiles);
            } else {
                AccionXPerfil accSegPerfiles = new AccionXPerfil();
                accSegPerfiles.setAccion(AccionPresenter.buscarAccion(10));
                accSegPerfiles.setPerfil(perfInsertado);
                accSegPerfiles.setEstado(0);
                axPerfil.setIdAccion(10);
                accSegPerfiles.setId(axPerfil);
                AccionXPerfilPresenter.registrarAccionXPerfil(accSegPerfiles);
            }

            if (ckbConfigVariables.isSelected()) {
                AccionXPerfil accConfigVariables = new AccionXPerfil();
                accConfigVariables.setAccion(AccionPresenter.buscarAccion(11));
                accConfigVariables.setPerfil(perfInsertado);
                accConfigVariables.setEstado(1);
                axPerfil.setIdAccion(11);
                accConfigVariables.setId(axPerfil);
                AccionXPerfilPresenter.registrarAccionXPerfil(accConfigVariables);
            } else {
                AccionXPerfil accConfigVariables = new AccionXPerfil();
                accConfigVariables.setAccion(AccionPresenter.buscarAccion(11));
                accConfigVariables.setPerfil(perfInsertado);
                accConfigVariables.setEstado(0);
                axPerfil.setIdAccion(11);
                accConfigVariables.setId(axPerfil);
                AccionXPerfilPresenter.registrarAccionXPerfil(accConfigVariables);
            }

            if (ckbRepEnvios.isSelected()) {
                AccionXPerfil accRepEnvios = new AccionXPerfil();
                accRepEnvios.setAccion(AccionPresenter.buscarAccion(12));
                accRepEnvios.setPerfil(perfInsertado);
                accRepEnvios.setEstado(1);
                axPerfil.setIdAccion(12);
                accRepEnvios.setId(axPerfil);
                AccionXPerfilPresenter.registrarAccionXPerfil(accRepEnvios);
            } else {
                AccionXPerfil accRepEnvios = new AccionXPerfil();
                accRepEnvios.setAccion(AccionPresenter.buscarAccion(12));
                accRepEnvios.setPerfil(perfInsertado);
                accRepEnvios.setEstado(0);
                axPerfil.setIdAccion(12);
                accRepEnvios.setId(axPerfil);
                AccionXPerfilPresenter.registrarAccionXPerfil(accRepEnvios);
            }

            if (ckbRepEnviosRetrasados.isSelected()) {
                AccionXPerfil accRepEnviosxEmpl = new AccionXPerfil();
                accRepEnviosxEmpl.setAccion(AccionPresenter.buscarAccion(13));
                accRepEnviosxEmpl.setPerfil(perfInsertado);
                accRepEnviosxEmpl.setEstado(1);
                axPerfil.setIdAccion(13);
                accRepEnviosxEmpl.setId(axPerfil);
                AccionXPerfilPresenter.registrarAccionXPerfil(accRepEnviosxEmpl);
            } else {
                AccionXPerfil accRepEnviosxEmpl = new AccionXPerfil();
                accRepEnviosxEmpl.setAccion(AccionPresenter.buscarAccion(13));
                accRepEnviosxEmpl.setPerfil(perfInsertado);
                accRepEnviosxEmpl.setEstado(0);
                axPerfil.setIdAccion(13);
                accRepEnviosxEmpl.setId(axPerfil);
                AccionXPerfilPresenter.registrarAccionXPerfil(accRepEnviosxEmpl);
            }

            if (ckbRepSeguridad.isSelected()) {
                AccionXPerfil accRepEnviosRetrasados = new AccionXPerfil();
                accRepEnviosRetrasados.setAccion(AccionPresenter.buscarAccion(14));
                accRepEnviosRetrasados.setPerfil(perfInsertado);
                accRepEnviosRetrasados.setEstado(1);
                axPerfil.setIdAccion(14);
                accRepEnviosRetrasados.setId(axPerfil);
                AccionXPerfilPresenter.registrarAccionXPerfil(accRepEnviosRetrasados);
            } else {
                AccionXPerfil accRepEnviosRetrasados = new AccionXPerfil();
                accRepEnviosRetrasados.setAccion(AccionPresenter.buscarAccion(14));
                accRepEnviosRetrasados.setPerfil(perfInsertado);
                accRepEnviosRetrasados.setEstado(0);
                axPerfil.setIdAccion(14);
                accRepEnviosRetrasados.setId(axPerfil);
                AccionXPerfilPresenter.registrarAccionXPerfil(accRepEnviosRetrasados);
            }

            if (ckbRepRentabilidad.isSelected()) {
                AccionXPerfil accRepPagosxChofer = new AccionXPerfil();
                accRepPagosxChofer.setAccion(AccionPresenter.buscarAccion(15));
                accRepPagosxChofer.setPerfil(perfInsertado);
                accRepPagosxChofer.setEstado(1);
                axPerfil.setIdAccion(15);
                accRepPagosxChofer.setId(axPerfil);
                AccionXPerfilPresenter.registrarAccionXPerfil(accRepPagosxChofer);
            } else {
                AccionXPerfil accRepPagosxChofer = new AccionXPerfil();
                accRepPagosxChofer.setAccion(AccionPresenter.buscarAccion(15));
                accRepPagosxChofer.setPerfil(perfInsertado);
                accRepPagosxChofer.setEstado(0);
                axPerfil.setIdAccion(15);
                accRepPagosxChofer.setId(axPerfil);
                AccionXPerfilPresenter.registrarAccionXPerfil(accRepPagosxChofer);
            }

            if (ckbRepSimulacion.isSelected()) {
                AccionXPerfil accRepHorasExtras = new AccionXPerfil();
                accRepHorasExtras.setAccion(AccionPresenter.buscarAccion(16));
                accRepHorasExtras.setPerfil(perfInsertado);
                accRepHorasExtras.setEstado(1);
                axPerfil.setIdAccion(16);
                accRepHorasExtras.setId(axPerfil);
                AccionXPerfilPresenter.registrarAccionXPerfil(accRepHorasExtras);
            } else {
                AccionXPerfil accRepHorasExtras = new AccionXPerfil();
                accRepHorasExtras.setAccion(AccionPresenter.buscarAccion(16));
                accRepHorasExtras.setPerfil(perfInsertado);
                accRepHorasExtras.setEstado(0);
                axPerfil.setIdAccion(16);
                accRepHorasExtras.setId(axPerfil);
                AccionXPerfilPresenter.registrarAccionXPerfil(accRepHorasExtras);
            }
            JOptionPane.showMessageDialog(this, "Se registró el nuevo perfil");
            Main.usrSesion.refresh();
            cambiarVista(new Frm_BuscarPerfil());
        } else {
            JOptionPane.showMessageDialog(this, "Por favor ingresar todos los campos");
        }
    }//GEN-LAST:event_btnToolGuardarActionPerformed

    private void txtNombreKeyTyped(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_txtNombreKeyTyped
        val.validaCaracteresRaros(evt);
        val.validaMaxSize(evt, 20, txtNombre.getText());
    }//GEN-LAST:event_txtNombreKeyTyped

    private void txaDescripcionKeyTyped(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_txaDescripcionKeyTyped
        val.validaCaracteresRaros(evt);
        val.validaMaxSize(evt, 100, txaDescripcion.getText());
    }//GEN-LAST:event_txaDescripcionKeyTyped
    // Variables declaration - do not modify//GEN-BEGIN:variables
    private javax.swing.JButton btnToolBuscar;
    private javax.swing.JButton btnToolCancelar;
    private javax.swing.JButton btnToolEliminar;
    private javax.swing.JButton btnToolGuardar;
    private javax.swing.JButton btnToolLimpiar;
    private javax.swing.JButton btnToolModificar;
    private javax.swing.JButton btnToolNuevo;
    private javax.swing.JCheckBox ckbAdminEmpleados;
    private javax.swing.JCheckBox ckbAdminVehiculo;
    private javax.swing.JCheckBox ckbConfigVariables;
    private javax.swing.JCheckBox ckbPlaniMapa;
    private javax.swing.JCheckBox ckbPlaniMonitorear;
    private javax.swing.JCheckBox ckbPlaniPlanificar;
    private javax.swing.JCheckBox ckbRepEnvios;
    private javax.swing.JCheckBox ckbRepEnviosRetrasados;
    private javax.swing.JCheckBox ckbRepRentabilidad;
    private javax.swing.JCheckBox ckbRepSeguridad;
    private javax.swing.JCheckBox ckbRepSimulacion;
    private javax.swing.JCheckBox ckbSegPerfiles;
    private javax.swing.JCheckBox ckbSimulacion;
    private javax.swing.JCheckBox ckbVentaClientes;
    private javax.swing.JCheckBox ckbVentaPedidos;
    private javax.swing.JCheckBox ckbVentaProductos;
    private javax.swing.JScrollPane jScrollPane1;
    private javax.swing.JToolBar.Separator jSeparator1;
    private javax.swing.JToolBar.Separator jSeparator2;
    private javax.swing.JToolBar.Separator jSeparator3;
    private javax.swing.JToolBar jToolBar1;
    private javax.swing.JTabbedPane jtpAccesos;
    private javax.swing.JLabel lblDescripcion;
    private javax.swing.JLabel lblNombre;
    private javax.swing.JPanel pnlAdministracion;
    private javax.swing.JPanel pnlConfiguracion;
    private javax.swing.JPanel pnlPlanificacion;
    private javax.swing.JPanel pnlRegistrarPerfil;
    private javax.swing.JPanel pnlReportes;
    private javax.swing.JPanel pnlSeguridad;
    private javax.swing.JPanel pnlVentas;
    private javax.swing.JTextArea txaDescripcion;
    private javax.swing.JTextField txtNombre;
    // End of variables declaration//GEN-END:variables
}
